Building a Self-Contained Autoconfiguring Linux System on an ISO9660 File System
نویسنده
چکیده
Bootable CD-Roms with a small Linux rescue system in business card size [1, 2] or regular size live demonstration CDs [3] are becoming popular recently. Also, some of the commercial Linux distributors as well as non-profit Open Source groups are developing self-running demos that are preconfigured for certain hardware, or contain a configuration frontend. Knoppix (Knopper’s *nix) is an attempt to not only create a fully featured rescue/demo system on a single CD, but also to unburden the user from the task of hardware identification and configuration of drivers, devices and X11 for his or her specific hardware. The resulting product is supposed to be a platform CD with a stable GNU/Linux base system, that can be used to customize static installations for a specific purpose. Goal: Creating a fully functional and usable Linux system running completely from a single CD A frequently asked question asked by people who ”just want to have a glance” on Linux to check out how useful it could be for them is, ”How can I test Linux without having to change anything on my computer?”. Another issue often requested by those already familiar with Linux is, that there is seldom a fully installed and configured Linux system in reach when you could need one for network debugging purposes or simple tasks like converting files from and into different formats, recover lost data from a corrupt file system or run software that simply only exists for Linux. A ”portable Linux allround system”, but without having to carry around a notebook or mobile computer which can be lost or damaged, wouldn’t that be a great help? Knoppix is a one-CD live filesystem that can be customized as rescue system, security scanner or platform for presentations and demos, or as full-featured portable production platform with tools like KOffice or StarOffice. The underlying GNU/Linux base system is modified to boot non-interactively into runlevel 5 with a working X-Window and KDE [6] configuration, with all autodetectable devices configured, ready to (auto-)start applications. Reducing space limitations by compression The core system of about 200 MB (uncompressed) is currently based on the popular RedHat [4] distribution and contains all basic commands and tools for a generic Linux system. That leaves, on a standard 650 MB CDRom, over 400 MB for custom applications, which can simply be installed with standard RPM packages on the CD-Rom install/preparation system. As of Version 1.2, Knoppix features a transparently decompressing loopback-blockdevice derived from Paul ’Rusty’ Russel’s cloop kernel module hack. For a standard Linux installation, this reduces the space needed on the CD to about 50% down to 25% of the original filesystem size and leaves more space to custom applications or multimedia datafiles. The compressed live-filesystem is therefore present as a single file on the CD which is being mounted via cloop from the bootfloppy or El Torito bootimage at system startup, from the ramdisk containing the root filesystem. For performance and stability reasons, iso9660 has also been chosen as the underlying filesystem for the compressed image instead of a readonly ext2 filesystem that is common on other live CDRoms. The compressed filesystem not only adds free space on the CD, but also reduces access time and head movement of the CD-Rom drive, but handles physical read errors more ungraciously than an uncompressed filesystem and increases production time of a new release, because the whole installation filesystem needs to be compressed before the new version can be burned and tested. Platform and Applications Knoppix provides a ready-to-run operating system environment to: start security and auditing tools like nmap [8], nessus [7], dsniff and alike. Since there is no permanent storage present on a read-only CD-Rom, no sensitive information can be written or exposed accidentially. The security checks can be performed on computers directly within a customers network by simply booting from the CD on a machine that is already connected to the internal network, produce game and application demos that run in a safe and tested environment, have a stable demo installation of GNU/Linux available for presentation at trade shows or consulting talks with customers, build a customized, read-only Linux installation for educational environment which is preconfigured for internet access and contains all commonly used applications for this purpose, present the features and use of GNU/Linux without having to go through a long and maybe complicated installation and configuration process, feature a complete rescue and crash recovery system for all kinds of emergency issues with all necessary filesystems in the kernel, and repair tools available. Technical Details: Boot process, automatic hardware detection and configuration, autostart of X11 and applications In stage 1 of the boot process, the Linux loader LILO from the boot section of the el torito [5] 1.44 MB floppy image on the CD-Rom tries to read the kernel (currently 2.2.16) and an 4 MB compressed initial ramdisk. The size of this initial ramdisk determines the minimal amount of memory needed to use the distribution. Without XFree [9] and KDE, about 8-16 MB of RAM seem to be sufficient for a working textmode-only environment. In stage 2, the boot ramdisk tries to autoprobe for the most common SCSI adapters and identifies the CD-Rom drive where the Knoppix CD is located. The minirootdisk features a statically linked shell with commands like mount built in, since the space on the bootfloppy is limited. For compatibility reasons with current floppy drives, only a 1.44 MB floppy image is used on the CD instead of a 2.88 MB. The boot script tries to find the ! ! "
منابع مشابه
Different interpretations of ISO9660 file systems
In this paper, we examine the potential to hide data in an ISO9660 file system, which is used to store data on CD-ROMs. By design, this file system allows for multiple directory trees and different byte orderings of essential data. We describe how data could be hidden in an ISO9660 file system and create test images using the described techniques. We test commonly used forensics tools to determ...
متن کاملOBFS: A File System for Object-Based Storage Devices
The object-based storage model, in which files are made up of one or more data objects stored on self-contained Object-Based Storage Devices (OSDs), is emerging as an architecture for distributed storage systems. The workload presented to the OSDs will be quite different from that of generalpurpose file systems, yet many distributed file systems employ general-purpose file systems as their unde...
متن کاملA Stackable Wear-Leveling Module for Linux-Based Flash File Systems
Flash memory has now become a crucial component in building Linux-based embedded computers. As the overall flash-memory lifetime is concerned with block endurance, wear leveling is needed to evenly erase all blocks. This paper presents a modularized implementation of a wear-leveling algorithm. Our goal is to instantly enable any existing Linux-based flash file systems the ability of wear leveli...
متن کاملNFS File Handle Security
Each file on an NFS server is uniquely identified by a persistent file handle that is used whenever a client performs any NFS operation. NFS file handles reveal significant amounts of information about the server. If attackers can sniff the file handle, then they may be able to obtain useful information. For example, the encoding used by a file handle indicates which operating system the server...
متن کاملTowards a Highly Adaptable Filesystem Framework for Linux
Linux R © is growing richer in independent general purpose file systems with their own unique advantages, however, fragmentation and divergence can be confusing for users. Individual file systems are also adding an expanding number of options (e.g. ext3) and variations (e.g.reiser4 plugins) to satisfy new requirements. Both of these trends indicate a need for improved flexibility in file system...
متن کامل